﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Capa_Entidad;
using Acceso_Datos.Clases_DAO;
namespace Negocio.Clases_BL
{
    public class clsPacienteBLcs
    {
        clsPacienteDAO datos = new clsPacienteDAO();

        public bool Insertar(ADM_PACIENTE obj)
        {
            return datos.Insertar(obj);
        }

        public bool Modicar(ADM_PACIENTE obj)
        {
            return datos.Modificar(obj);
        }

        public bool Eliminar(ADM_PACIENTE obj)
        {
            return datos.Eliminar(obj);
        }
        public List<ADM_PACIENTE> listar()
        {
            return datos.listar();
        }
        public List<V_Cubo_Admision> Cubo_Adminsion()
        {
            return datos.Cubo_Admision();
        }
        public int UltimoNumero()
        {
            return datos.UltimoNumero();
        }
        //28/08/13 Guido: se renombro metodo que era obtenerIdPaciente
        public List<ADM_PACIENTE> obtenerCodPaciente(String codPaciente)
        {
            return datos.obtenerCodPaciente(codPaciente);
        }
        //12(08/13 Guido: LINQ trasladado desde capa de presentacion
        public List<ADM_PACIENTE> buscarPacientePorId(Int32 codigoPaciente)
        {
            var consulta = from P in listar()
                           where P.PAC_ID_PACIENTE == codigoPaciente
                           select P;
            return consulta.ToList();
        }
        //12(08/13 Guido: LINQ trasladado desde capa de presentacion
        public bool verificarSiExistePacientePorTipoYNroDoc(Int32 tipoDocumento, String nroDocumento)
        {
            var consulta = from P in listar()
                           where P.TDI_ID_TIPO_DOCUMENTO_IDENTIDAD == tipoDocumento && P.PAC_NRO_DOCUMENTO == nroDocumento
                           select P;
            int numRows = consulta.Count();
            bool existe = false;
            if (numRows > 0)
            {
                existe = true;
            }
            else
            {
                existe = false;
            }
            return existe;
        }
    }
}
